package dletc.job;

import java.util.ArrayList;
import java.util.Scanner;

public class job04 {

	//定义一个只能存放User对象的集合  集合ArrayList<类型>
	
	static ArrayList<User> list = new ArrayList<>();
	
	//定义一个静态代码块 ，给集合中存入初值
	static{
		// add 添加元素
		list.add(new User("tom","888888")); 
		list.add(new User("jack","999999")); 
		list.add(new User("gavin","666666")); 
		
		//遍历结合中的数据，输出到控制台用于显示   
		// 集合没有length()方法   长度是size()方法
		for (int i = 0; i < list.size(); i++) {
			//list.get() 是取出集合的元素  元素类型是User 里面有toString 用于显示 
			list.get(i).show();
		}
	}
	
	public static void main(String[] args) {
		
		Scanner scanner = new Scanner(System.in);
		System.out.print("用户名：");
		String username = scanner.next();
		System.out.print("密码：");
		String password = scanner.next();
		
		//获取的信息需要封装到User对象中
		User u = new User(username,password);
		String login = login(u);
		System.out.println(login);

	}
	
	//设计一个验证用户名密码是否正确的方法
		 public static String  login(User u){
			 
			 //定义一个字符串用于返回结果的
			 String str = "";
			 
			 //将参数的对象的用户名和密码取出来
			 //代表你输入的用户名和密码
			 String n = u.getName();
			 String p = u.getPassWord();
			 
			 
			 //判断自己输入的用户名和密码和集合中的用户名和密码是否一样
			 
			 //1 遍历集合获取集合中的所有数据
			 for(int i = 0; i < list.size() ; i++){
				 
				 //获取集合中的对象
				  User user = list.get(i);
				  
				  //获取集合中当前遍历出的对象的用户名和密码
				  String name = user.getName();
				  String password = user.getPassWord();
				  
				  //判断：输入的和集合中的用户名和秘密是否一致
				  if(name.equals(n)){//用户名如果一样
					    //密码是否一样
					  if(password.equals(p)){
						  return "登录成功";
					  }else{
						  return "登录失败";
					  }
				  }else{
					  //此处不能用 return 值 返回  可能该用户名不等第一个用户 等于其他的用户
					  //return 值  两层意思  一个是return 结束 方法  一个是返回值
					  str =  "用户名不存在"; 
					  continue;
				  }
			 }
			 
			return str;
			 
		 }

}
